package com.lkx.kafka.monitor.service;

import com.lkx.kafka.monitor.dto.ClusterMetrics;
import com.lkx.kafka.monitor.dto.ConsumerGroupMetrics;
import com.lkx.kafka.monitor.dto.TopicMetrics;

import java.util.List;

public interface KafkaMonitorService {
    /**
     * 获取集群整体指标
     */
    ClusterMetrics getClusterMetrics();

    /**
     * 获取所有主题指标
     */
    List<TopicMetrics> getAllTopicMetrics();

    /**
     * 根据主题名查询指标
     */
    TopicMetrics getTopicMetrics(String topicName);

    /**
     * 获取所有消费者组指标
     */
    List<ConsumerGroupMetrics> getAllConsumerGroupMetrics();

    /**
     * 根据消费者组ID查询指标
     */
    ConsumerGroupMetrics getConsumerGroupMetrics(String groupId);

    /**
     * 刷新指标数据
     */
    void refreshMetrics();
}